package model

type DataConfig struct {
	ProjectName string                `json:"projectName"`
	Datas       map[string]*DataEntry `json:"datas"`
}

type DataEntry struct {
	URL      string               `json:"url"`
	JSONKeys map[any]*JSONData    `json:"jsonKeys"` //k=path
	HTMLKeys map[string]*HTMLData `json:"htmlKeys"` //k=left+right+key
}

type JSONData struct {
	Path       []interface{} `json:"path"`       // 支持多类型路径，如["data",0,"name"]
	UpdateTime string        `json:"updateTime"` // 注意字段名拼写建议改为 UpdateTime
	Keys       []string      `json:"key"`        // 正则表达式
	Data       []any         `json:"data"`       // 存储匹配结果
}

type HTMLData struct {
	UpdateTime string   `json:"updateTime"` // 注意字段名拼写建议改为 UpdateTime
	Left       string   `json:"left"`       // 左边界
	Right      string   `json:"right"`      // 右边界
	Keys       []string `json:"key"`        // 标识键
	Data       []string `json:"data"`       // 存储匹配内容
}
